Method of writing control data into on-board vehicle control unit and the control unit

ABSTRACT

A first-type data transfer frame for uncompressed transfer of a control program and control data including reference data, and a second-type data transfer frame for compressed transfer have the same fixed size, and each transfer frame includes compression identification information indicating uncompressed or compressed data. When an on-board vehicle control unit receives a transfer frame with uncompressed control data, the control unit stores the uncompressed control data of the frame in a nonvolatile memory. When the transfer frame has compressed control data, the control unit writes the compressed control data of the frame into RAM, and decompresses control data in the RAM. The control unit sequentially accumulates decompressed control data in the RAM, and when amount of the accumulated control data reaches a setting amount, the control unit halts the decompressing, and transfers the decompressed control data from the RAM into the nonvolatile memory, and restarts decompressing for the next received data transfer frame from the halt point.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an on-board vehicle control unit thatcontrols operation of an on-board vehicle automatic device, and to amethod of writing a control program and/or reference data used inexecution of the program into the on-board control unit. While notintended to be so limited, the invention may be used as a transmissioncontroller for controlling operation of an automatic transmission in avehicle, and as a controller for control of operation of other on-boardautomatic devices.

2. Description of Related Art

JP-A-2003-202072 describes a control unit in a vehicle, which controlunit calculates target speed based on road information and a travelcondition, and which provides computer control of a vehicle automatictransmission so that vehicle speed corresponds to the target speed.JP-A-2006-283832 describes a control unit in a vehicle, which controlunit uses a CPU incorporating RAM and EEPROM to control an automatictransmission based on a shift lever position and an engine operatingcondition.

JP-A-2001-034601 describes a method of writing a control program into anonvolatile memory of a 1-chip microcomputer used for most on-boardvehicle control units. The microcomputer mainly includes a CPU, a RAMand a nonvolatile memory (EPROM or EEPROM), wherein the RAM has asmaller storage capacity than the nonvolatile memory. In a firstembodiment shown in FIG. 1 of JP-A-2001-034601, a control program iscompressed in order to reduce transfer time of the control program andthen transferred from an external PROM writer into (the nonvolatilememory of) the microcomputer. The control program is divided into blocksthat respectively fit into free spaces of the RAM and each of the blocksis compressed and transferred. However, the program is written whilebeing transferred, which is not suitable for high compression, leadingto a low compression ratio. In addition, when the compressed data isdecompressed, since the data is compressed and transferred in blocksthat respectively fit into free spaces of the RAM, compressed datavolume, namely, transferred data volume in a block is small, resultingin relatively little savings in transfer time. Thus, in a secondembodiment, the compressed data, in blocks of the control program, isreceived and sequentially written into the RAM, and then written intothe nonvolatile memory, and when all the compressed data of the controlprogram has been stored in the nonvolatile memory, the compressed datais sequentially read from the nonvolatile memory into the RAM anddecompressed, and then the decompressed data is then written back intothe nonvolatile memory. In the foregoing process, transfer time fortransfer of the control program from the PROM writer to the 1-chipmicrocomputer is shortened, in addition, a compression method with ahigh compression ratio may be used, and therefore transfer time can befurther reduced.

However, since the nonvolatile memory needs to concurrently holdcompressed data of a control program and decompressed data thereof,storage capacity of the nonvolatile memory must be increased incorrespondence to the amount of compressed data to be held. Moreover,when the control program is written, the same compressed data is writtentwice into the RAM, in addition, writing and reading of the compresseddata must be performed into/from the nonvolatile memory, which increasesthe volume handled in read/write processing of data from/into the RAMand the nonvolatile memory.

Writing of control data and/or reference data used in the controlprogram is different in data transfer frame formed by the PROM writer orother transfer tools as between uncompressed data transfer andcompressed data transfer. In addition, storing processing of data into anonvolatile memory differs between the storing of compressed data anduncompressed data, the data being received by an on-board vehiclecontrol unit such as 1-chip microcomputer. However, in some cases, it isdesirable that all data be transferred as uncompressed data, or that thedata be transferred as mixed data of compressed data and uncompresseddata. Particularly, since the reference data used in the control programmay be frequently changed for convenience of design, the data issometimes desired to be processed as uncompressed data because easilyconfirmed. Moreover, when writing a particular identification number,uncompressed data being recognizable as text data is desirably used insome cases.

SUMMARY OF THE INVENTION

A first object of the invention is to enable writing, additionalwriting, or partial update writing of a control program or controlreference data into an on-board vehicle control unit with transfer ofdata as either compressed data or uncompressed data. A second object ofthe invention is to achieve such writing while largely avoiding need forincreasing storage capacity of the RAM or the nonvolatile memory. Athird object of the invention is to achieve such writing withoutparticularly increasing the volume of data read/write processingfrom/into each of the RAM and the nonvolatile memory.

To achieve the foregoing objects, the invention provides a first-typedata transfer frame for transfer, in uncompressed form, a program forcontrolling operation of an on-board vehicle automatic device, andstorage data formed by severally dividing control data includingreference data used in execution of the program, and a second-type datatransfer frame for transferring storage data formed by severallydividing compressed control data into blocks of compressed data of thesame fixed size, wherein each data transfer frame includes compressionidentification information indicating uncompressed or compressed data.When compression identification information in a data frame received byan on-board vehicle control unit indicates uncompressed data, thecontrol unit stores storage data of the data transfer frame in anonvolatile memory. When the compression identification informationindicates compressed data, the control unit writes the storage data ofthe data transfer frame into RAM, starts decompression processing, andstores the decompressed control data into the nonvolatile memory.Subsequently, when the control unit finishes the decompressionprocessing of the storage data, the control unit halts the decompressionprocessing. Then, when the control unit receives a subsequent datatransfer frame, in the case that compression identification informationin the subsequent data transfer frame indicates compressed data, thecontrol unit starts decompression processing of storage data in thesubsequent data transfer frame from the halt point, and repeatsreceiving a data transfer frame and the storing of control data from thedata transfer frame into the nonvolatile memory, until all the controldata is stored in the nonvolatile memory. To achieve this, the inventionprovides a method of writing control data into the on-board vehiclecontrol unit.

One embodiment of the present invention is a method of writing controldata in an on-board vehicle control unit which has a RAM for temporarilystoring writing data and a nonvolatile memory for storing a program forcontrolling operation of an on-board vehicle automatic device andcontrol data including reference data used in execution of the program.The control data in the nonvolatile memory includes status dataindicating the status of the on-board vehicle automatic device. Thevehicle control unit generates output data in the RAM based on thestatus data, and controls operation of the on-board vehicle automaticdevice according to the output data. In this method, the control unitreceives either a first-type data transfer frame having a fixed size,including compression identification information indicating uncompresseddata and storage data formed by severally dividing the uncompressedcontrol data for storage in the nonvolatile memory, or a second-typedata transfer frame having the same fixed size, including compressionidentification information indicating compressed data and storage dataformed by severally dividing compressed control data obtained bycompressing the control data for storage in the nonvolatile memory (27).

In this method, when the compression identification information in areceived data transfer frame indicates uncompressed data, the controlunit writes the storage data from the data transfer frame into thenonvolatile memory. On the other hand, when the compressionidentification information in the received data transfer frame indicatescompressed data, the control unit decompresses the storage data in thedata transfer frame, stores the decompressed data in the nonvolatilememory and then, when the control unit finishes decompression of thestorage data, the control unit halts the decompression processing.Subsequently, when the control unit receives another data transferframe, the control unit starts decompression processing of storage datain the subsequent data transfer frame from the halt point and storesthis additional decompressed data in the nonvolatile memory. The controlunit repeats of receiving of data transfer frames and the storing of theuncompressed/decompressed control data in the data transfer frames inthe nonvolatile memory until all the control data which isuncompressed/decompressed is stored in the nonvolatile memory.

Since the first-type data transfer frame for uncompressed data transferand the second-type data transfer frame for compressed data transferhave the same fixed size, the frames may be transferred to the on-boardvehicle control unit with the same frame configuration. Since each datatransfer frame has compression identification information, whether ornot decompression is necessary may be easily determined. When thecontrol data is large in size, the data is divided into pieces, and therespective divided pieces are treated as data transfer frames andtransferred as such to the on-board vehicle control unit and storedtherein. Therefore, the RAM may have capacity only large enough to writeand hold one data transfer frame, i.e. to hold a set amount ofdecompressed control data for writing into a nonvolatile memory.Therefore, the RAM is not required to have such a large storage capacitythat all compressed control data and all control data obtained bydecompressing the compressed data may be held at the same time. That is,RAM capacity need not be increased for writing. Since volume of dataread/written from/into the RAN and the nonvolatile memory is notparticularly increased, writing time may be reduced.

In the method of writing control data into an on-board vehicle controlunit as described above, wherein the compression identificationinformation is address data that specifies a storage address for thecontrol data in the nonvolatile memory, when the information indicatesuncompressed data, that information shows the address data itself, andwhen the information indicates compressed data, the information shows anarea outside an address area of the nonvolatile memory.

In the later-described situation, where the address data is for an areaoutside the address area of the nonvolatile memory, the address dataincludes 3 bytes, and “01” of the most significant 2 bits (first 2 bits)of the most significant byte of the address data indicates “compresseddata”, and “00” indicates “uncompressed data”. In this case, the highestorder (maximum) address in a storage area of the nonvolatile memory isan address for which the bits are “0”. Since transfer destinationaddress data of a leading portion (protocol) of the data transfer frameis combined with the compression identification information, thefirst-type data transfer frame and the second-type data transfer frameapparently have the same configuration, which further facilitatescombined use of uncompressed control data transfer and compressedcontrol data transfer.

In another aspect, the present invention provides an on-board vehiclecontrol unit which includes a RAM for temporarily writing data and anonvolatile memory for storing a program controlling operation of anon-board vehicle automatic device and control data including referencedata used in execution of the program. The vehicle control unit uses thenonvolatile memory to hold status data (as control data) indicating thestatus of the on-board vehicle automatic device and, in the RAM,generates output data based on the status data, and controls operationof the on-board vehicle automatic device in accordance with the outputdata.

The control unit receives data transfer frames, each including storagedata, formed by severally dividing uncompressed control data to bestored into the nonvolatile memory or by dividing compressed controldata, and compression identification information indicating whether ornot the storage data is compressed. The data transfer frames all haveone fixed size regardless of whether the storage data is compressed oruncompressed. When compression identification information in a receiveddata transfer frame indicates uncompressed data, the control unit storesthat uncompressed storage data (in the data transfer frame) in thenonvolatile memory. When the compression identification information inthe received data transfer frame indicates compressed data, the controlunit decompresses that data (in the data transfer frame), and stores thedecompressed data in the nonvolatile memory, then when the control unitfinishes decompression of the storage data, the control unit halts thedecompression processing, and then when the control unit receives asubsequent data transfer frame, in the case that compressionidentification information in the data transfer frame indicatescompressed data, the control unit starts decompression processing ofthat data in the subsequent data transfer frame beginning from the haltpoint and stores the decompressed data in the nonvolatile memory.

The control unit repeats the receiving of data transfer frames and thestoring of the uncompressed control data of the data transfer frame inthe nonvolatile memory until all the uncompressed control data to bestored in the nonvolatile memory is so stored.

As described above, since a data transfer frame for uncompressed datatransfer and a data transfer frame for compressed data transfer have thesame fixed size, the frames may be transferred to the on-board vehiclecontrol unit with the same frame configuration. Since each data transferframe has compression identification information, whether or notdecompression processing is necessary may be easily based on thatinformation. In the case of control data having a large volume (size),the data is divided into pieces, and the respective divided pieces aretreated as data transfer frames and transferred to the on-board vehiclecontrol unit for storage therein. Therefore, the RAM need have acapacity only large enough to write and hold one data transfer frame,and to hold a setting amount of decompressed control data having settingamount as a writing unit into a nonvolatile memory. In other words, theRAM is not required to have a storage capacity large enough to hold, atthe same time, all compressed control data and all decompressed controldata obtained by decompressing the compressed data. Thus, the RAMcapacity need not be increased for writing. Since the volume ofread/write processing of data from/into the RAM and the nonvolatilememory is not particularly increased, writing time may be reduced.

In the present invention, the compression identification information isaddress data that specifies a storage address in the nonvolatile memoryfor the control data, and when the information indicates uncompresseddata, the information shows the address data itself, but when theinformation indicates compressed data, the information shows an areaoutside an address area of the nonvolatile memory.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a transmission control system equipped withan on-board vehicle control unit according to a preferred embodiment ofthe invention.

FIG. 2 is a block diagram showing main components of the microcomputer22 shown in FIG. 1.

FIG. 3 is a flowchart of a control program stored in EEPROM 27.

DESCRIPTION OF PREFERRED EMBODIMENTS

Other objects and features of the invention will become apparent fromthe following description of a preferred embodiment with reference todrawings.

Embodiment 1

FIG. 1 shows a diagram of a transmission control system equipped with anon-board vehicle control unit 22 of an embodiment of the invention. Anautomatic transmission 1 has a transmission mechanism, a hydrauliccircuit that operates the transmission mechanism, and a solenoid valvegroup for controlling hydraulic pressures in the hydraulic circuit. Thetransmission mechanism transmits rotational power of an engine 3 forrotatably driving a wheel drive shaft, changes direction of the enginerotational output, and includes a torque converter, a planetary gearmechanism for multi-stage transmission, a clutch, and a brake. Thehydraulic circuit includes an oil pump, and many mechanical valves,orifices and fluid channels. The hydraulic circuit allows hydraulicpressure to be ON (applied) or OFF (drained) for a clutch or brake ofthe transmission mechanism by opening/closing switching of each valve ofa solenoid valve group in the fluid circuit, or by changing hydraulicpressure. Thus, a range, i.e. parking P, reverse R, neutral N, orforward (drive), of the automatic transmission 1 is determined, and aspeed range (first speed to sixth speed) for each of the forward andreverse ranges is determined. The solenoid valve group includes asolenoid valve for forward range setting, a solenoid valve for reversesetting, and a solenoid valve for setting of the speed range and lockup.

An electronic control unit (ECU) 2 receives input of status signals suchas a brake signal, a throttle opening signal, an engine rotational speedsignal, a vehicle speed signal, and input of other signals to bereferenced for determining the range and the speed range. The ECU 2 alsoreceives a range instruction signal indicating a key of a rangeselection key group (electrical switch group) 4 operated by the driver.The ECU 2 determines a range to be set and a speed range, in response tothe status signal and the range instruction signal, respectively, andgenerates a solenoid operational signal instructing switching-on (ofcurrent to the solenoid) or switching-off (no current) of each solenoidvalve in the solenoid valve group in order to set the automatictransmission 1 to the determined range and the determined speed, andoutputs the signal to a solenoid driver (current application circuit)for applying current to each solenoid incorporated in the automatictransmission 1. Thus, each solenoid valve is either ON (receivingcurrent), or OFF.

The ECU 2 has an input/output interface (I/F) 21 that receives statussignals indicating an operation condition of the engine 3 and anoperation condition of the automatic transmission 1 from the engine 3and the automatic transmission 1, respectively, receives a rangeselection signal from the range selection key group 4, and outputs anON/OFF instruction signal to each of the solenoid valves in a hydrauliccircuit of the automatic transmission 1, or outputs an instructionsignal instructing change of hydraulic pressure. An input/outputinterface (I/F) 23 receives status signals showing a drive condition anda travel condition of the vehicle from an on-board vehicle systemcontroller VSCC, serving as the main controller of an on-board vehiclecomputer system, and outputs a transmission condition signal, indicativeof an operating condition of the automatic transmission 1, to theon-board vehicle system controller VSCC. A transmission controller 22 isan on-board vehicle control unit of an embodiment of the invention,which generates operational output data in response to an inputtedstatus signal using a transmission control program, and outputs the datato the I/F 21.

The operational output data is decoded into a transmission operationalsignal in the I/F 21, and the decoded signal is output to a solenoiddriver of the automatic transmission 1. In this embodiment, a 1-chipmicrocomputer is used as the transmission controller 22, which generatescontrol output data in response to input of the status signal, inaccordance with the transmission control program stored in a nonvolatilememory (EEPROM 27 in this embodiment), which is an internal programmemory of the microcomputer 22, and outputs the data to the I/F 21.

FIG. 2 shows the main components of the microcomputer 22. Themicrocomputer 22 includes CPU 24, a common bus 25, RAM 26, the EEPROMserving as a nonvolatile memory, and an input/output port 28. Intransmission control, the RAM 26 holds status data compiled from statussignals (input signals) in bytes by the I/F 21, and temporarily holdsinput/output data such as operational data to be output to the automatictransmission 1 and status data to be output to the on-board vehiclesystem controller VSCC, and data in an intermediate step of arithmeticprocessing or logical processing.

The EEPROM 27 holds an operation program for operation of the CPU 24 andreference data in a nonvolatile state. In this embodiment, a bootprogram writing area 271 is set in the EEPROM 27 in addition to a“control data” writing area 273 for storing (installing) thetransmission control program, and the reference data (speed-rangeboundary data for determining a transmission characteristic, lockupboundary data and the like) used in the program.

In the description which follows, the transmission control program andthe reference data are generally expressed as “control data”.

FIG. 2 shows the data writing state when the CPU 24 has installed the“control data” in the EEPROM 27 (internal nonvolatile memory of themicrocomputer 22) according to the boot program.

When the “control data” is installed in the microcomputer 22, a writingtool 29, which stores a data transfer frame incorporating “control data”as shown in FIG. 2, is connected to the input/output port 28 via the I/F23. In this embodiment, there are two types of data transfer frames fortransferring “control data” to be installed from the writing tool 29into the microcomputer 22.

In the first-type data transfer frame, a protocol including writingaddress data (3 bytes) of the EEPROM is added to a leading portion of awriting area of uncompressed “control data” of “first setting amount”(data transfer size), the amount being a fixed amount equal to or lessthan half the free space of the RAM 26 at the time of initiation of theinstallation.

In the second-type data transfer frame, a protocol including writingaddress data (3 bytes) of the EEPROM is added to a leading portion of awriting area corresponding to the “first setting amount” of compressed“control data”. The most significant 2 bits (first 2 bits) of the mostsignificant byte of the 3-byte address data are “01” indicating“compression”. If the address data indicates an address exceeding themaximum address in a writing area of the EEPROM 27, namely, an addressoutside of a storage area, a real address is expressed by 2 bits of datawhich are “00”. That is, the real address data is obtained by rewritingthe 2 bits from “01” to “00”. Writing address data in the first-typedata transfer frame indicates the real address the 2 bits of which are“00”. Alternatively, the real address may be stored as compressed data,and acquired by decompressing the compressed data instead of obtainingthe real address by rewriting the 2 bits from “01” to “00”.

In the case that uncompressed “control data” is transferred to themicrocomputer by using the first-type data transfer frame, when thetotal amount of uncompressed “control data” exceeds the “first setting(or “set”) amount”, the writing tool 29 divides the total amount of databy the “first setting amount” so that divided, plural uncompressedfirst-type data transfer frames are formed, and the writing tool 29holds the plural data transfer frames.

In the case where compressed “control data” is transferred to themicrocomputer by using the second-type data transfer frame, the writingtool 29 compresses the “control data”, and when the total amount of thecompressed data exceeds the “first setting amount”, the writing tool 29divides the compressed data by a “setting amount” so that pluralsecond-type data transfer frames of divided compressed-data are formed,and the writing tool 29 holds the thus formed plural data transferframes. FIG. 2 shows a plurality of second-type data transfer framesformed and held by the writing tool 29 in this manner.

The boot program 271 that starts immediately after power-on includes aprogram 272 that decompresses (decodes) compressed (coded) “controldata” in the second-type data transfer frame, and the decompressionprogram 272 is used to decompress compressed “control data”. That is,the decompression program is used to restore uncompressed “controldata”.

FIG. 3 shows a flowchart of a “control data” installation routineexecuted by the CPU 24. When the CPU 24 receives operation voltage uponpower-on, the CPU starts the boot program 271 (step s1), and determineswhether or not the writing tool is connected to a writing connectionport (communication port of the I/O 28) according to the boot program(step s2).

In the following description, “S” means “step”.

When the writing tool 29 is not connected, the CPU 24 starts the controlprogram in the control program writing area 273, and starts transmissioncontrol according to the control program (s2-s11-s12).

However, when the writing tool 29 is connected, the CPU 24 communicateswith the writing tool 29, and receives a first data transfer frame andwrites data from the frame into the RAM 26 (s2 to s4). Next, accordingto the identification data, i.e. the most significant 2 bits of the mostsignificant byte of 3-byte writing address data of the received frame,when the 2-bit data is “00”, (uncompressed) “control data” from thefirst data transfer frame is directly written into an address area(leading address) or later area of the EEPROM 27, the address beingindicated by the 3-byte address data (s5 and s6).

When the compression identification information is “01”, (compressed)“control data” from the first data transfer frame is decompressed usinga decompression program, and the decompressed “control data” isprogressively accumulated in the RAM 26, and when the accumulated amountis equal to or larger than the “setting amount”, the decompression ishalted, and the control data is written into a leading address area orlater area of the EEPROM 27, the address being indicated by dataobtained by reading the most significant 2 bits (compressionidentification information) of the 3-byte address data as “00” (s5-s7 tos9). Decompression is restarted for compressed data subsequent to thecompressed data at the halt point (s10-s7). When the amount ofdecompressed “control data” is equal to or larger than “the secondsetting amount” having a size of a unit of writing “control data”, thedecompression is halted, and the control data is written into an addressarea or later area of the EEPROM 27, the address being an addresssubsequent to a final address written with previous control data. Inthis way, every time the amount of the decompressed “control data”becomes equal to or larger than “the second setting amount”,decompression is halted, and the decompressed “control data” is writteninto the EEPROM 27, and when such writing is finished, decompression isrestarted.

The first setting amount is different from the second setting amount.That is, the first setting amount has the data transfer size, and thesecond setting amount is the size of a writing unit of decompressed“control data”.

When decompression of the compressed “control data” in the first datatransfer frame is completed, decompression is halted, and thedecompressed control data is written into the EEPROM 27.

When writing of the “control data” from the first data transfer frameinto the EEPROM 27 is finished, the CPU 24 signals READY to the writingtool 29, and in response to this signal, the writing tool 29 sends asecond data transfer frame to the microcomputer 22 (s3 and s4).

In the case that transfer data in the second data transfer frame isuncompressed, the CPU 24 performs data processing in the same way whenprocessing a first data transfer frame (s5 and s6).

When the “control data” in the second data transfer frame is compressed,the previously halted decompression is restarted using the “controldata” in the second data transfer frame, and the decompressed “controldata” is written into an address area or later area of the EEPROM 27,the address area being an address area subsequent to the address for theend of writing the “control data” in the first (most recently received)data transfer frame. Other process steps are the same as in the case ofthe first data transfer frame (s5-s7 to s10).

Receiving processing of a third or later data transfer frame is the sameas the receiving processing of the second data transfer frame. Data sizeinformation after decompression is written into the “control data”accommodating area of an initial data transfer frame. When the CPU 24detects that all the compressed data has been decompressed, based on thedata size information after decompression, the CPU 24 writes “controldata”, in a last data transfer frame accumulated in the RAM, into theEEPROM 27, executes writing end processing, and then starts execution(running) of the control program which has been written into the controlprogram writing area 273 for transmission control according to thecontrol program (s10-s3-s11-s12). End information may be writtenfollowing “control data” into a “control data” accommodating area of thelast data transfer frame instead of writing data size information afterdecompression into the “control data” accommodating area of the initialdata transfer frame, and when the CPU 24 detects the end information,the CPU 24 writes the “control data”, in the last data transfer frameaccumulated in the RAM, into the EEPROM 27, executes writing endprocessing, and then starts the control program which has been writteninto the control program writing area 273.

In the foregoing embodiment, since the first-type data transfer framewhich is transferred in an uncompressed form, and the second-type datatransfer frame which is transferred in a compressed form have the samefixed size, the frames may be transferred to an in-vehicle control unitwith the same frame configuration. Since the data transfer frame hascompression identification information, whether or not decompressionprocessing is necessary can be easily determined. For control datahaving a large size, the data is divided into n pieces, and therespective divided pieces are treated as first to nth data transferframes, transferred to the microcomputer 22, and stored in the EEPROM 27which is a nonvolatile program memory. Therefore, the RAM 26 may have acapacity being only large enough to write and hold one data transferframe, and to hold decompressed control data having the setting amountas a writing unit into the EEPROM 27. In other words, the RAM is notrequired to have such a large storage capacity that all compressedcontrol data (1 to n) and all control data obtained by decompressing thecompressed data may be held at the same time. Further, the volume ofreading/writing from/into the RAM 26 and the EEPROM 27 is notparticularly increased.

Furthermore, in the foregoing embodiment, even during decompressing datareceived as compressed “control data” in one data transfer frame, whenthe amount of the decompressed control data written into the RAM 26reaches the setting amount, decompression processing is halted and thedecompressed control data is written into the EEPROM 27, anddecompression processing is restarted from the halt point. The controldata is repeatedly decompressed and written into the nonvolatile memoryin such a manner until all the compressed control data in the one datatransfer frame has been decompressed and stored in the nonvolatilememory, thus avoiding RAM overflow. Further, since the “setting amount”is set to equal to or less than half the free space of the RAM 26, whilethe storage capacity of the RAM 26 need not be increased, theuncompressed control data may be transferred using the first-type datatransfer frame, and stored into the EEPROM 27, in addition, thecompressed control data may be transferred using the second-type datatransfer frame, and decompressed and stored into the EEPROM 27.

The invention may be embodied in other specific forms without departingfrom the spirit or essential characteristics thereof. The presentembodiments are therefore to be considered in all respects asillustrative and not restrictive, the scope of the invention beingindicated by the appended claims rather than by the foregoingdescription, and all changes which come within the meaning and range ofequivalency of the claims are therefore intended to be embraced therein

1. A method of writing control data into an on-board vehicle controlunit, which has RAM for temporarily writing data and a nonvolatilememory for storing a control program for controlling operation of anon-board vehicle automatic device and control data including referencedata used in execution of the control program, wherein the control datain the nonvolatile memory includes status data indicating status of theon-board vehicle automatic device, wherein the RAM is used to generateoutput data based on the status data for control of operation of theon-board vehicle automatic device and the RAM is also used to receivecontrol data which is to be stored in the nonvolatile memory, the methodcomprising: receiving, in said RAM, (1) a first-type data transfer framehaving a fixed size, each first-type data frame including a control dataportion obtained by severally dividing uncompressed control data forstorage in the nonvolatile memory and compression identificationinformation indicating uncompressed data, and (2) a second-type datatransfer frame having the same fixed size, each second-type datatransfer frame including a control data portion obtained by severallydividing compressed control data obtained by compressing the controldata to be stored in the nonvolatile memory and compressionidentification information indicating compressed data; when thecompression identification information in a data transfer frame to bereceived by said RAM indicates uncompressed control data, directlyaccumulating the uncompressed data in said RAM and then storing theaccumulated uncompressed control data of the data transfer frame in thenonvolatile memory; when the compression identification information inthe data frame to be received by said RAM indicates compressed controldata, decompressing the compressed control data in the data transferframe and accumulating the decompressed data in said RAM until a haltpoint is reached, and then storing the decompressed data in thenonvolatile memory, then if there is additional compressed control datain the data transfer frame, repeating the steps of decompressing thecompressed control data until the halt point is reached and storing thedecompressed data in the nonvolatile memory until all of the compressedcontrol data of said data frame has been decompressed; and then when thecontrol unit receives a subsequent second-type data transfer frame,starting decompressing of the compressed control data in the subsequentdata transfer frame from the halt point and storing the decompresseddata in the nonvolatile memory; and repeatedly receiving data transferframes, decompressing compressed control data and storing thedecompressed and uncompressed control data of the data transfer framesin the nonvolatile memory until all the control data is stored in thenonvolatile memory.
 2. The method of writing control data into anon-board vehicle control unit according to claim 1, wherein thecompression identification information is address data that specifies astorage address in the nonvolatile memory for the control data, and whenthe compression identification information indicates uncompressed data,the compression identification information shows the address dataitself, and when the compression identification information indicatescompressed data, the compression identification information shows anarea outside an address area of the nonvolatile memory.
 3. The method ofwriting control data into an on-board vehicle control unit according toclaim 1, wherein the halt point is equal to a setting amount, saidcompressed data being divided by said setting amount before transfer tosaid control unit to form said frames.
 4. An on-board vehicle controlunit comprising: a RAM for temporarily storing data; a nonvolatilememory storing a program for controlling operation of an on-boardvehicle automatic device and control data including reference data usedin execution of the program, wherein the control data in the nonvolatilememory includes status data showing a status of the on-board vehicleautomatic device, the RAM generating output data, based on the statusdata, for controlling operation of the on-board vehicle automaticdevice, the RAM also receiving control data which is to be stored in thenonvolatile memory; wherein the control data stored in the nonvolatilememory is received by the control unit in the form of plural datatransfer frames formed by dividing the control data, each data transferframe including a divided portion of the control data and compressionidentification information indicating whether or not the control data inthe frame is compressed, all data transfer frames having the same onefixed size regardless of whether the control data is compressed oruncompressed; wherein when compression identification information in areceived data transfer frame indicates that the control data received bythe control unit is uncompressed control data, the control unit directlyaccumulates said uncompressed control data in said RAM and then storesthe accumulated uncompressed control data of the data transfer frame inthe nonvolatile memory; wherein when the compression identificationinformation in a received data transfer frame as received by the controlunit indicates that the received control data is compressed data, thecontrol unit decompresses the control data of the data transfer frameand accumulates the decompressed control data in said RAM until saidhalt point is reached, and then stores the accumulated decompressedcontrol data in the nonvolatile memory, and then if there is additionalcompressed control data in the data transfer frame, repeats the steps ofdecompressing the compressed control data until the halt point isreached and storing the decompressed data in nonvolatile memory untilall of the compressed control data in said data frame has beendecompressed, then when the control unit finishes decompression of thecontrol data, the control unit halts the decompressing at a halt point,and then when the control unit receives a subsequent data transferframe, the control unit starts decompressing the control data in thesubsequent data transfer frame beginning at the halt point and storesthe decompressed control data in the nonvolatile memory; and wherein thecontrol unit repeats receiving the data transfer frames and storinguncompressed and decompressed control data from the data transfer framesin the nonvolatile memory until all the control data is stored in thenonvolatile memory.
 5. The on-board vehicle control unit according toclaim 4: wherein the compression identification information is addressdata that specifies a storage address in the nonvolatile memory for thecontrol data, and when the information indicates uncompressed data, thecompression identification information shows the address data itself,and when the compression identification information indicates compresseddata, the compression identification information shows an area outsidean address area of the nonvolatile memory.
 6. The on-board vehiclecontrol unit according to claim 4: wherein the halt point is equal to asetting amount, said compressed data being divided by said settingamount before transfer to said control unit to form said frames.